package com.xiaoyg.algorithm.sort;
import java.util.Arrays;
public class BubbleSort {
    public static void main(String[] args) {
        int[] values = {17,14,13,29,25,8,4};
        System.out.println("values数组原始顺序："+ Arrays.toString(values));
        bubbleSort(values);
        System.out.println("values数组排序后顺序："+ Arrays.toString(values));
    }
    private static void bubbleSort(int[] values) {
        //比较几轮？
        for (int i = 0; i < values.length - 1 ; i++) {
            //定义一个布尔类型的变量，标记数组是否已到达有序状态；
            boolean flag = true;
            for (int j = 0; j < values.length - i - 1; j++) {
                if(values[j] > values[j + 1]){
                    int temp = values[j];
                    values[j] = values[j+1];
                    values[j+1] = temp;
                    flag = false;
                }
            }
            //有一轮没有进行比较值，说明从本轮开始，已经是有序的数组了，后面的比较的轮次可以不进行比价
            if (flag){
                break;
            }
        }
    }
}
